
clear
set more off

// IMPORT CENSUS 2011 DATA


global allprov agrigento alessandria  ancona arezzo ascolipiceno asti avellino barletta belluno benevento bergamo biella ///
bari bologna bolzano brescia brindisi cagliari caltanissetta campobasso carboniaiglesias caserta catania catanzaro ///
chieti como cosenza cremona crotone cuneo enna fermo ferrara firenze foggia forli frosinone genova gorizia grosseto ///
imperia isernia laquila laspezia latina lecce lecco livorno lodi lucca macerata mantova massacarrara matera mediocampidano messina ///
milano modena monzabrianza napoli novara nuoro ogliastra olbia oristano padova palermo parma pavia perugia pesarourbino pescara piacenza pisa pistoia ///
pordenone potenza prato ragusa ravenna reggiocalabria reggioemilia rieti rimini roma rovigo salerno sassari savona siena siracusa sondrio ///
taranto teramo terni torino trapani trento treviso trieste udine valleaosta varese venezia verbano vercelli verona vibovalentia vicenza viterbo

foreach name in $allprov {

use "$c2011\I2011_`name'.dta" , clear

label define gender 1 "maschio" 2 "femmina"
label define codici_province 001 "Torino" 002 "Vercelli" 003 "Novara" 004 "Cuneo" 005 "Asti" 006 "Alessandria" 096 "Biella" 103 "Verbano-Cusio-Ossola" ///
007 "Valle D'Aosta/Valle d'Aoste" 012 "Varese" 013 "Como" 014 "Sondrio" 015 "Milano" 016 "Bergamo" 017 "Brescia" 018 "Pavia" 019 "Cremona" 020 "Mantova" 097 "Lecco" 098 "Lodi" 108 ///
"Monza e della Brianza" 021 "Bolzano/Bozen" 022 "Trento" 023 "Verona" 024 "Vicenza" 025 "Belluno" 026 "Treviso" 027 "Venezia" 028 "Padova" 029 "Rovigo" 030 "Udine" 031 "Gorizia" ///
032 "Trieste" 093 "Pordenone" 008 "Imperia" 009 "Savona" 010 "Genova" 011 "La Spezia" 033 "Piacenza" 034 "Parma" 035 "Reggio nell'Emilia" 036 "Modena" 037 "Bologna" 038 "Ferrara" ///
039 "Ravenna" 040 "Forli-Cesena" 099 "Rimini" 045 "Massa-Carrara" 046 "Lucca" 047 "Pistoia" 048 "Firenze" 049 "Livorno" 050 "Pisa" 051 "Arezzo" 052 "Siena" 053 "Grosseto" 100 "Prato" ///
054	"Perugia" 055 "Terni" 041 "Pesaro e Urbino" 042	"Ancona" 043	"Macerata" 044	"Ascoli Piceno" 109	"Fermo" 056	"Viterbo" 057	"Rieti" 058	"Roma" 059	"Latina" 060 "Frosinone" ///
066	"L'Aquila" 067	"Teramo" 068	"Pescara" 069	"Chieti" 070	"Campobasso" 094	"Isernia" 061	"Caserta" 062	"Benevento" 063	"Napoli" 064	"Avellino" 065	"Salerno" ///
071 "Foggia" 072	"Bari" 073	"Taranto" 074	"Brindisi" 075	"Lecce" 110	"Barletta-Andria-Trani" 076	"Potenza" 077	"Matera" 078	"Cosenza" 079	"Catanzaro" ///
080	"Reggio di Calabria" 101	"Crotone" 102	"Vibo Valentia" 081	"Trapani" 082	"Palermo" 083	"Messina" 084	"Agrigento" 085	"Caltanissetta" 086	"Enna" 087	"Catania" ///
088	"Ragusa" 089	"Siracusa" 090	"Sassari" 091	"Nuoro" 092	"Cagliari" 095	"Oristano" 104	"Olbia-Tempio" 105	"Ogliastra" 106	"Medio Campidano" 107	"Carbonia-Iglesias"

label define cittadinanza 000 "nullo" 100 "Italiana"  201 "Albania"   202	"Andorra" 203 "Austria" 206	"Belgio" 209 "Bulgaria" 210 "Ex-cecoslovacchia" 212	"Danimarca" 214	"Finlandia" 215	"Francia" 216 "Germania" 219 "Regno Unito" ///	
220	"Grecia" 221 "Irlanda" 223 "Islanda" 225 "Liechtenstein" 226 "Lussemburgo" 227	"Malta" 229	"Monaco" 231 "Norvegia" 232	"Paesi Bassi" 233 "Polonia" 234	"Portogallo" ///	
235	"Romania" 236 "San Marino" 239	"Spagna" 240 "Svezia" 241 "Svizzera" 243 "Ucraina" 244	"Ungheria" 245	"Russa,Federazione" 246	"Santa Sede" 247 "Estonia" 248 "Lettonia" ///
249	"Lituania" 250 "Croazia" 251 "Slovenia" 252	"Bosnia-Erzegovina" 253	"Macedonia,ex Repubblica Jugoslava di" 254 "Moldova" 255 "Slovacchia" 256 "Bielorussia" 257	"Ceca,Repubblica" ///	
270	"Montenegro" 271 "Serbia, Repubblica di" 301 "Afghanistan" 302 "Arabia Saudita" 304	"Bahrein" 305 "Bangladesh" 306 "Bhutan" 307	"Myanmar (ex Birmania)" 309	"Brunei" ///
310	"Cambogia" 311 "Sri Lanka (ex Ceylon)" 314	"Cinese, Repubblica Popolare" 315 "Cipro" 319 "Corea, Repubblica Popolare Democratica (Corea del Nord)" ///
320	"Corea, Repubblica (Corea del Sud)"  322	"Emirati Arabi Uniti" 323	"Filippine" 324	"Territori dell'Autonomia Palestinese" 	326	"Giappone" 	327	"Giordania" 330	"India" ///	
331	"Indonesia" 332	"Iran, Repubblica Islamica del" 333	"Iraq" 334	"Israele" 335 "Kuwait" 336 "Laos"  337 "Libano" 338 "Timor Orientale" 339 "Maldive" 340 "Malaysia" 341 "Mongolia" ///	
342	"Nepal" 343	"Oman" 344 "Pakistan" 345 "Qatar" 346	"Singapore" 348	"Siria" 349	"Thailandia" 351 "Turchia" 353 "Vietnam" 354 "Yemen" 356 "Kazakhstan" 357 "Uzbekistan" ///	
358	"Armenia" 359 "Azerbaigian" 360	"Georgia" 361 "Kirghizistan" 362 "Tagikistan" 363 "Taiwan (ex Formosa)" 364	"Turkmenistan" 401 "Algeria" 402 "Angola" 404 "Costa d'Avorio" ///	
406	"Benin (ex Dahomey)" 408 "Botswana" 409	"Burkina Faso (ex Alto Volta)" 410	"Burundi" 411 "Camerun" 413	"Capo Verde" 414 "Centrafricana, Repubblica" 415 "Ciad" 417	"Comore" ///	
418	"Congo (Repubblica del)" 419 "Egitto" 420 "Etiopia"  421	"Gabon" 422	"Gambia" 423 "Ghana" 424 "Gibuti" 425 "Guinea" 426 "GuineaBissau" 427 "Guinea Equatoriale" 428	"Kenya" ///	
429	"Lesotho" 430	"Liberia" 431 "Libia" 432 "Madagascar" 434	"Malawi" 435 "Mali" 436	"Marocco"  437	"Mauritania" 438 "Mauritius" 440 "Mozambico" 441 "Namibia" 442	"Niger" ///	
443	"Nigeria" 446 "Ruanda" 448	"San Tome Principe" 449 "Seychelles" 450	"Senegal" 451 "Sierra Leone" 453 "Somalia" 454	"Sud Africa" 455 "Sudan" 456 "Swaziland" 457 "Tanzania" ///	
458	"Togo" 460	"Tunisia" 461 "Uganda" 463	"Congo, Repubblica democratica del (ex Zaire)"  464 "Zambia" 465	"Zimbabwe (ex Rhodesia)" 466 "Eritrea" 503 "Antigua e Barbuda" ///	
505	"Bahamas" 506 "Barbados" 507 "Belize" 509 "Canada" 513	"Costa Rica" 514 "Cuba" 515	"Dominica" 516	"Dominicana, Repubblica" 517 "El Salvador" 518	"Giamaica" 519 "Grenada" ///	
523	"Guatemala" 524	"Haiti" 525	"Honduras" 527	"Messico" 529 "Nicaragua" 530 "Panama" 532	"Saint Lucia" 533 "Saint Vincent e Grenadine" 534 "Saint Kitts e Nevis" ///
536	"Stati Uniti d'America" 602	"Argentina"  604	"Bolivia" 605	"Brasile" 606 "Cile" 608 "Colombia" 609	"Ecuador" 612 "Guyana" 614	"Paraguay" 615	"peru" 616 "Suriname" ///	
617	"Trinidad e Tobago" 618	"Uruguay" 619 "Venezuela" 701 "Australia" 703 "Figi" 708 "Kiribati" 712	"Marshall, Isole" 713 "Micronesia, Stati Federati" 715 "Nauru" 719 "Nuova Zelanda" ///	
720	"Palau" 721	"Papua Nuova Guinea" 725 "Salomone, Isole" 727	"Samoa" 730	"Tonga" 731	"Tuvalu" 732 "Vanuatu" 999 "APOLIDE" 888 "altro" 777 "non indicato"

label define codici_regioni  1 "Piemonte" 2 "Valle D'Aosta" 3 "Lombardia" 4 "Trentino Alto-Adige" 5 "Veneto" 6 "Friuli Venezia Giulia" 7 "Liguria" 8 "Emilia Romagna" ///
9 "Toscana" 10 "Umbria" 11 "Marche" 12 "Lazio" 13 "Abruzzo" 14 "Molise" 15 "Campania" 16 "Puglia" 17 "Basilicata" 18 "Calabria" 19 "Sicilia" 20 "Sardegna" 

rename codreg cod_reg
lab values cod_reg codici_regioni
rename codpro_2011 provincia
lab values provincia codici_province
rename codcom_2011 cod_mun
lab var cod_mun "codice comune"
rename sesso sex 
lab values sex gender 
rename progper idc
lab var idc "identificativo individui per comune"
rename cittad nationality
lab define nat 1 "italiano" 2 "straniero"
lab values nationality nat
rename gnas born_d
rename mnas born_m 
rename anas born_y           
rename eta age
rename flag_res family
lab define fam 1 "famiglia" 2 "convivenza"
lab values family fam 

rename staciv ms
lab var ms "marital status"
label define stato_civile 1 "celibe/nubile" 2 "coniugato" 3 "separato di fatto" 4 "separato legalmente" 5 "divorziato" 6 "vedovo"
lab values ms stato_civile

rename titstudioric educ
destring educ , replace
tab educ
label define educl  1 "no leggere" 2 "no titolo" 3 "elementari" 4 "medie" 5 "sup 2-3 anni" 6 "superiori" 7 "accademia" 8 "dip universitario" 9 "diploma accademico" 10 "laurea triennale" 11 "diploma accademico" 12 "laurea" 
lab values educ educl
gen high = educ>=5
lab var high "high school"
tab high

rename codfam idf
lab var idf "identificativo famiglia"
rename ncompstr nforeign
lab var nforeign "number of foreign family members"
rename ncomp nfam
lab var nfam "number of family members"

rename pronas born_prov 
lab var born_prov "provincia nascita"
lab values born_prov codici_province
rename regnas born_region
lab var born_region "regione nascita"
lab values born_region codici_regioni
rename estanas born_country
lab values born_country cittadinanza
rename stac nationality2
lab var nationality2 "cittadinanza"
lab values nationality2 cittadinanza
rename tipfam family_type
destring family_type , replace
lab define ft 1	"unipersonale senza nuclei, non in coabitazione" 2 "unipersonale senza nuclei, in coabitazione" 3 "senza nuclei, altre famiglie (n maggiore 1)" ///	 	
4 "con un solo nucleo , senza altre persone residenti, in Coppie senza figli" 5	"con un solo nucleo, senza altre persone residenti, in Coppie con figli" /// 	
6 "con un solo nucleo, senza altre persone residenti,  Madre con figli" 7 "con un solo nucleo, senza altre persone residenti,  Padre con figli" ///	 	
8 "con un solo nucleo, con altre persone residenti, in Coppie senza figli" 9 "con un solo nucleo, con altre persone residenti, in Coppie con figli" /// 	
10	"con un solo nucleo, con altre persone residenti,  Madre con figli" 11	"con un solo nucleo, con altre persone residenti,  Padre con figli" 12 "con due o piu nuclei"
lab values family_type ft

rename relpar relation 
destring relation , replace
lab define rel 1 "Intestatario del Foglio di famiglia" 2 "Coniuge dellintestatario" 3 "Convivente in coppia con lintestatario" 4 "Figlio/a dellintestatario e del coniuge/convivente" ///	 	
5	"Figlio/a del solo intestatario" 6	"Figlio/a del solo coniuge/convivente"	 7	"Genitore (o coniuge/convivente del genitore) dellintestatario"	8	"Suocero/a dellintestatario" ///	 	
9	"Fratello/sorella dellintestatario"  	10	"Fratello/sorella del coniuge/convivente" 	11	"Coniuge/convivente del fratello/sorella dellintestatario o del fratello/sorella del coniuge/convivente" ///	 	
12	"Genero/nuora (coniuge/convivente del figlio/a) dellintestatario e/o del coniuge/convivente"	13	"Nipote (figlio/a di un figlio/a) dellintestatario e/o del coniuge/convivente" ///	 	
14	"Nipote (figlio/a di un fratello/sorella) dellintestatario e/o del coniuge/convivente"  15	"Nonno/a dellintestatario o del coniuge/convivente" 16	"Altro parente dellintestatario e/o del coniuge/convivente" ///	
17	"Altra persona coabitante senza legami di coppia, parentela o affinit"
lab values relation rel
rename idnuc idnucleo
rename cl_nuc nucleo_type
destring nucleo_type , replace
lab define nt 1 "Coppia con figli"	2 "Coppia senza figli"	 3	"Monogenitore padre" 4 "Monogenitore madre"
lab values nucleo_type nt
rename cl_couple couple_type 
destring couple_type, replace
lab define ct 1 "coppia coniugata" 2 "coppia non coniugata"
lab values couple_type ct
rename anntra italy_year
lab var italy_year "anno del trasferimento in italia"
rename luonasmad m_born
destring m_born, replace
lab var m_born " luogo nascita madre"
lab define nascita 1 "italia" 2 "estero"
lab values m_born nascita
rename stanmad mbc
lab var mbc "mother born country"
lab values mbc cittadinanza
rename luonaspad f_born
destring f_born, replace
lab var f_born " luogo nascita padre"
lab values f_born nascita
rename stanpad fbc
lab var fbc "father born country"
lab values fbc cittadinanza

* Origin of immigrants
 
tab born_country
codebook born_country
gen bc=.
replace bc= born_country
replace bc= nationality2 if born_country==0 & nationality2>100 & m_born==2 & f_born==2 // sg
lab var bc "individual country of origin and SG"
tab bc
codebook bc
drop if bc==999 | bc==998 // apolidi

* Marital status  
 
tab ms
gen single= ms==1 | ms==4 | ms==5 | ms==6 // single sono celibi separati div e vedovi
tab single

* Keep singles above 18 and below 61

preserve
keep if single==1
drop if age<18 
drop if age>61  
collapse (sum) single , by(sex bc provincia cod_reg) 
save "$c2011\singlemag_`name'_2011_country.dta" , replace
restore

* Keep cohabitations

preserve
keep if single==1
drop if age<18 
save "$c2011\singlemag_2011_cohabitation_`name'.dta" , replace
restore

save "$c2011\\`name'_2011_country.dta" , replace

}



* Singles

clear
set more off
use "$c2011\singlemag_agrigento_2011_country.dta" , clear

global allprov2 alessandria  ancona arezzo ascolipiceno asti avellino barletta belluno benevento bergamo biella ///
bari bologna bolzano brescia brindisi cagliari caltanissetta campobasso carboniaiglesias caserta catania catanzaro ///
chieti como cosenza cremona crotone cuneo enna fermo ferrara firenze foggia forli frosinone genova gorizia grosseto ///
imperia isernia laquila laspezia latina lecce lecco livorno lodi lucca macerata mantova massacarrara matera mediocampidano messina ///
milano modena monzabrianza napoli novara nuoro ogliastra olbia oristano padova palermo parma pavia perugia pesarourbino pescara piacenza pisa pistoia ///
pordenone potenza prato ragusa ravenna reggiocalabria reggioemilia rieti rimini roma rovigo salerno sassari savona siena siracusa sondrio ///
taranto teramo terni torino trapani trento treviso trieste udine valleaosta varese venezia verbano vercelli verona vibovalentia vicenza viterbo

foreach name in $allprov2{
append using "$c2011\singlemag_`name'_2011_country.dta" 
}
codebook provincia
recode provincia ( 108 = 15) // change monza-brianza in MILANO
recode provincia ( 110 = 72) // change barletta-andria-trani e foggia in BARI 
recode provincia  ( 71 = 72)  
recode provincia ( 91 = 92 ) // change oristano, nuoro, olbia-tempio, ogliastra, medio-campidano, carbonia-iglesias in CAGLIARI
recode provincia ( 95 = 92 )
recode provincia ( 104 = 92 )
recode provincia ( 105 = 92 )
recode provincia ( 106 = 92 )
recode provincia ( 107 = 92 )
recode provincia ( 99 = 41) // change rimini in pesaro
recode provincia ( 109 = 44) // change fermo in ascoli-piceno
rename provincia provres
recode bc (270 = 224 ) // Serbia e Montenegro insieme
recode bc (271 = 224 )

collapse (sum) single , by(sex bc provres ) 

* Keep single males
preserve
keep if sex==1
rename single msinglemag_2011
rename bc hbc
drop sex
save "$data\Msinglemag_2011_country.dta" , replace
restore

* Keep single females
preserve
keep if sex==2
rename single fsinglemag_2011
rename bc wbc
drop sex 
save "$data\Fsinglemag_2011_country.dta" , replace
restore

preserve
collapse (sum) single, by(sex bc)
save "$data\allsinglemag_2011_country.dta" , replace
restore




*  Cohabitations

clear
set more off
use "$c2011\singlemag_2011_cohabitation_agrigento.dta" , clear

foreach name in $allprov2{
append using "$c2011\singlemag_2011_cohabitation_`name'.dta" , force
}

 drop if relation==2 | relation==4 | relation==5 | relation==6 | relation==7 | relation==8 | relation==9 | relation==10 | relation==11 | relation==12 | relation==13 | relation==14 | relation==15 | relation==16 | relation==17
 drop if ms==4|ms==5
 preserve
 keep if sex==1 
 keep provincia cod_mun idf relation born_d born_m born_y age born_prov born_country nationality nationality2 italy_year bc sex prodap comdap nucleo_type
 foreach var in relation born_d born_m born_y age born_prov born_country nationality nationality2 italy_year bc sex prodap comdap {
 rename `var' h`var'
 }
 cap drop rep
 duplicates tag provincia cod_mun idf , gen(rep)
 drop if rep>0  
 drop rep
 save "$data\cohabitation_2011_male.dta" , replace
 restore
 
 preserve
 keep if sex==2 
 keep provincia cod_mun idf relation born_d born_m born_y age born_prov born_country nationality nationality2 italy_year bc sex prodap comdap nucleo_type
 foreach var in relation born_d born_m born_y age born_prov born_country nationality nationality2 italy_year bc sex prodap comdap {
 rename `var' w`var'
 }
 cap drop rep
 duplicates tag provincia cod_mun idf , gen(rep)
 drop if rep>0
 drop rep
 save "$data\cohabitation_2011_female.dta" , replace
 restore

 * Final cohabitations 2011
 
 use "$data\cohabitation_2011_male.dta" , clear
 merge 1:1 provincia cod_mun idf using "$data\cohabitation_2011_female.dta" , keep(matched)
 tab _merge
 drop _merge
 gen year = 2011
 destring witaly_year hitaly_year , replace
 save "$data\cohabitation_2011.dta" , replace



 
 *  Singles - local labor markets

clear
set more off
use "$c2011\singlemag_2011_cohabitation_agrigento.dta" , clear
foreach name in $allprov2{
append using "$c2011\singlemag_2011_cohabitation_`name'.dta" , force
}
drop if age<18 //ok 
drop if age>61  
recode bc (270 = 224 ) 
recode bc (271 = 224 )

rename cod_mun istat
collapse (sum) single , by(sex bc istat cod_reg) 

* Keep single males
preserve
keep if sex==1
rename single msinglemag_2011
rename bc hbc
drop sex
save "$data\Msinglemag_2011_country_llm.dta" , replace
restore

* Keep single females
preserve
keep if sex==2
rename single fsinglemag_2011
rename bc wbc
drop sex 
save "$data\Fsinglemag_2011_country_llm .dta" , replace
restore



